package br.com.webcrm.service;

import java.util.List;

import br.com.webcrm.model.Evento;
import br.com.webcrm.model.Usuario;

public interface EventoService extends BaseService {
	
public Evento consultaEventoPorIdEvento(Integer idEvento) throws Exception;
	
	public Evento novoEvento(Evento evento,Usuario usuarioCriador) throws Exception;
	
	public Evento encaminharEvento(Evento evento,Evento eventoAnterior, Usuario usuarioCriador) throws Exception;
	
	public Evento concluirEvento(Evento evento,Usuario usuarioResolveu) throws Exception;
	
	public Evento atualizarStatus(Evento evento,Usuario usuarioVisualizou) throws Exception;
	
	public void geraEventoAvisoLeitura(Evento evento,Usuario usuarioVisualizou) throws Exception;
	
	public void geraEventoAvisoConclusao(Evento evento,Usuario usuarioLogado) throws Exception;
	
	public List<Evento> consultaEventosFilhos(Integer idEventoPai) throws Exception;
	
	public Evento consultaEventoPorIdEventoAnterior(Integer idEventoAnterior) throws Exception;
	
	public List<Evento> consultaEventosPorIdEventoAnterior(Integer idEventerior) throws Exception;
	
	public Evento atualizar(Evento evento) throws Exception;
	
	public List<Evento> consultarEventosPorIdEntidade(Integer idEntidade) throws Exception;
	
	public List<Evento> consultarEventosPorIdEntidade(Integer idEntidade,Integer status) throws Exception;
	
	public List<Evento> consultarEventosCriadosPorIdUsuario(Integer idUsuario) throws Exception;
	
	public List<Evento> consultarEventosRecebidosPorIdUsuario(Integer idUsuario) throws Exception;
	

}
